# Q. What is this file?
# A. This file contains options which allow you to configure your multiworld experience while allowing
#    others to play how they want as well.
#
# Q. How do I use it?
# A. The options in this file are weighted. This means the higher number you assign to a value, the
#    more chances you have for that option to be chosen. For example, an option like this:
#
#    map_shuffle:
#      on: 5
#      off: 15
#
#    Means you have 5 chances for map shuffle to occur, and 15 chances for map shuffle to be turned
#    off.
#
# Q. I've never seen a file like this before. What characters am I allowed to use?
# A. This is a .yaml file. You are allowed to use most characters.
#    To test if your yaml is valid or not, you can use this website:
#        http://www.yamllint.com/
#    You can also verify that your Archipelago options are valid at this site:
#        https://archipelago.gg/check

# Your name in-game, limited to 16 characters.
#     {player} will be replaced with the player's slot number.
#     {PLAYER} will be replaced with the player's slot number, if that slot number is greater than 1.
#     {number} will be replaced with the counter value of the name.
#     {NUMBER} will be replaced with the counter value of the name, if the counter value is greater than 1.
name: Player{number}

# Used to describe your yaml. Useful if you have multiple files.
description: Default Pizza Tower Template

game: Pizza Tower
requires:
  version: 0.6.7 # Version of Archipelago required for this yaml to work as expected.
  game:
    Pizza Tower: 1.3.3 # Version of the world required for this yaml to work as expected.

Pizza Tower:
  ################
  # Game Options #
  ################
  progression_balancing:
    # A system that can move progression earlier, to try and prevent the player from getting stuck and bored early.
    # 
    # A lower setting means more getting stuck. A higher setting means less getting stuck.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 99
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-99: 0 # random value between 0 and 99
    disabled: 0 # equivalent to 0
    normal: 50 # equivalent to 50
    extreme: 0 # equivalent to 99

  accessibility:
    # Set rules for reachability of your items/locations.
    # 
    # **Full:** ensure everything can be reached and acquired.
    # 
    # **Minimal:** ensure what is needed to reach your goal can be acquired.
    full: 50
    minimal: 0

  ###################
  # General Options #
  ###################
  character:
    # Choose your character!
    peppino: 50
    the_noise: 0
    swap: 0

  difficulty:
    # Determines how strict the randomizer logic will be, and as a result, how difficult your run may be.
    # 
    # Normal: Stricter logic for new players or those looking for a quick, simple run. The randomizer will never expect you to do anything too technical or creative.
    # 
    # Expert: Relaxed logic for those looking for a challenge. The randomizer may expect you to know obscure mechanics, perform precise tricks, or use glitches or other unintended behavior.
    normal: 50
    expert: 0

  completion_goal:
    # Determines your goal in this run.
    # CTOP: Defeat Pizzaface and complete the Crumbling Tower of Pizza.
    # Snotty: Kill Snotty. Only levels below Snotty's home floor will be accessible.
    ctop: 50
    snotty: 0

  open_world:
    # Unlock all floors immediately, making more levels accessible from the start.
    # 
    # If active, boss keys will be removed from the item pool.
    'false': 50
    'true': 0

  bonus_ladders:
    # Add bonus ladders to Hub to make accessing levels easier.
    # 
    # Floors up to and including the selected floor number are affected.
    # 
    # Set to 0 to disable bonus ladders.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 5
    3: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-5: 0 # random value between 0 and 5
    disabled: 0 # equivalent to 0

  snotty_floor:
    # Determines which floor Snotty will show up on.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 1
    # Maximum value is 5
    4: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-1-5: 0 # random value between 1 and 5

  death_link:
    # When you die, everyone who enabled death link dies. Of course, the reverse is true too.
    'false': 50
    'true': 0

  ring_link:
    # Links your in-level point gain/loss with other players.
    # Point gain is only linked when coming from pizza toppings, pizzasonas, clocks and bells.
    'false': 50
    'true': 0

  ################
  # Boss Options #
  ################
  toppin_count:
    # Number of toppins shuffled into the item pool.
    # 
    # May be less than expected if the item pool is too small.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 150
    95: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-150: 0 # random value between 0 and 150

  floor_1_cost:
    # Percentage of Toppins required to fight the Floor 1 Boss.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    11: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  floor_2_cost:
    # Percentage of Toppins required to fight the Floor 2 Boss.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    27: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  floor_3_cost:
    # Percentage of Toppins required to fight the Floor 3 Boss.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    48: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  floor_4_cost:
    # Percentage of Toppins required to fight the Floor 4 Boss.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    69: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  floor_5_cost:
    # Percentage of Toppins required to fight the Floor 5 Boss.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    91: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  shuffle_boss_keys:
    # On: Shuffle Boss Keys into the item pool.
    # 
    # Off: Keep Boss Keys in their normal spots.
    'false': 50
    'true': 0

  ################
  # Extra Checks #
  ################
  treasure_checks:
    # Adds the game's 19 Treasures to the pool as locations.
    'false': 0
    'true': 50

  secret_checks:
    # Adds the game's 57 Secrets to the pool as locations.
    'false': 0
    'true': 50

  srank_checks:
    # Adds the game's 24 S Ranks to the pool as locations.
    # 
    # Obtaining a P Rank in a level will also check its corresponding S Rank location.
    'false': 50
    'true': 0

  prank_checks:
    # Adds the game's 24 P Ranks to the pool as locations.
    'false': 50
    'true': 0

  cheftask_checks:
    # Adds the game's 72 Chef Tasks (achievements) to the pool as locations.
    # 
    # If S/P Rank checks are disabled, the no-hit boss Chef Tasks as well as S/P Ranked floor Chef Tasks will set to Excluded.
    # If Pumpkin checks are enabled, this will also add the 2 pumpkin-related Chef Tasks as checks.
    'false': 50
    'true': 0

  pumpkin_checks:
    # Adds the game's 30 pumpkins to the pool as locations.
    'false': 50
    'true': 0

  pumpkin_count:
    # Number of Pumpkins shuffled into the item pool if pumpkin checks is turned on.
    # 
    # May be less than expected if the item pool is too small.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 50
    30: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-50: 0 # random value between 0 and 50

  tricky_treat_cost:
    # Percentage of Pumpkins required to access Tricky Treat.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    67: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  ####################
  # Filler and Traps #
  ####################
  trap_percentage:
    # Set a percentage of how many filler items are replaced with traps here.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    10: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  clothing_filler:
    # Determines whether outfits will be shuffled into the item pool.
    'false': 50
    'true': 0

  filler_weights:
    # Determines how often each filler item appears in the itempool
    Cross Buff: 20
    Nothing: 5
    Permanent 10 Points: 40
    Permanent 100 Points: 3
    Permanent 50 Points: 7
    Pizza Shield: 10
    Primo Burg: 15

  trap_weights:
    # Determines how often each trap appears in the itempool
    Clown Trap: 20
    Fake Santa Trap: 20
    Ghost Trap: 10
    Granny Trap: 20
    Jumpscare: 0
    Oktoberfest!: 20
    Timer Trap: 10

  #########################
  # Randomization Options #
  #########################
  randomize_levels:
    # Shuffle level entrances around the Hub.
    'false': 50
    'true': 0

  randomize_bosses:
    # Shuffle bosses (except Pizzaface) between floors.
    'false': 50
    'true': 0

  randomize_secrets:
    # Shuffle Secrets between levels.
    'false': 50
    'true': 0

  do_move_rando:
    # Determines whether your moves will be randomized. If disabled, only Toppins, Boss Keys, and filler will appear in the item pool.
    'false': 0
    'true': 50

  move_rando_list:
    # If "Randomize Moves" is enabled, any move indicated here will be shuffled into the item pool, and any move not indicated here will be useable from the start.
    ['Mach 4', 'Uppercut', 'Superjump', 'Grab', 'Taunt', 'Supertaunt', 'Bodyslam', 'Breakdance', 'Wallclimb', 'Double Jump', 'Rat Kick', 'Spin Attack', 'Wallbounce', 'Tornado', 'Crusher', 'Bomb']

  do_transfo_rando:
    # Determines whether any level-specific Transformations will be shuffled into the item pool.
    # Enabling this setting in combination with moveset randomization will place 2 movement abilities at the beginning of your world to prevent a restrictive start.
    'false': 50
    'true': 0

  transfo_rando_list:
    # If "Randomize Transformations" is enabled, any Transformation indicated here will be shuffled into the item pool, and any not indicated here will be useable from the start.
    ['Ball', 'Knight', 'Firemouth', 'Ghost', 'Mort', 'Weenie', 'Barrel', 'Olive Bubble', 'Rocket', 'Pizzabox', 'Sticky Cheese', "Satan's Choice", 'Shotgun', 'Revolver']

  shuffle_lap2:
    # On: Shuffles an item into the pool that enables all lap 2 portals
    # 
    # Off: Enables all lap 2 portals from the start
    'false': 50
    'true': 0

  randomize_music:
    # Determines whether in-game music should be randomized.
    'false': 50
    'true': 0

  randomize_enemies:
    # Determines whether an enemy is replaced with a random other enemy.
    'false': 50
    'true': 0

  fairly_random:
    # On: The first two levels will have at least two accessible locations each, and the first boss will not require a grab to defeat.
    # 
    # Off: The first two levels and first boss can be anything.
    # 
    # Only applies when Shuffle Level Gates and/or Shuffle Boss Gates are enabled.
    'false': 0
    'true': 50

  ###########################
  # Item & Location Options #
  ###########################
  local_items:
    # Forces these items to be in their native world.
    []

  non_local_items:
    # Forces these items to be outside their native world.
    []

  start_inventory:
    # Start with the specified amount of these items. Example: "Bomb: 1"
    {}

  start_hints:
    # Start with these item's locations prefilled into the ``!hint`` command.
    []

  start_location_hints:
    # Start with these locations and their item prefilled into the ``!hint`` command.
    []

  exclude_locations:
    # Prevent these locations from having an important item.
    []

  priority_locations:
    # Prevent these locations from having an unimportant item.
    []

  item_links:
    # Share part of your item pool with other players.
    []

  plando_items:
    # Generic items plando.
    []
